{
"/home/ubuntu/local_storage/src/components/__tests__/LocalStorageComponent.test.js":{"path":"/home/ubuntu/local_storage/src/components/__tests__/LocalStorageComponent.test.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":2,"8":1,"9":1,"10":1,"11":1},"b":{"1":[1,1],"2":[2,2]},"f":{"1":2,"2":1,"3":1},"fnMap":{"1":{"name":"_interopRequireDefault","line":13,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"2":{"name":"(anonymous_2)","line":15,"loc":{"start":{"line":5,"column":34},"end":{"line":5,"column":40}}},"3":{"name":"(anonymous_3)","line":17,"loc":{"start":{"line":7,"column":18},"end":{"line":7,"column":24}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":0}},"2":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"3":{"start":{"line":2,"column":0},"end":{"line":2,"column":0}},"4":{"start":{"line":3,"column":0},"end":{"line":3,"column":0}},"5":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"6":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"7":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"8":{"start":{"line":5,"column":0},"end":{"line":5,"column":0}},"9":{"start":{"line":7,"column":4},"end":{"line":7,"column":4}},"10":{"start":{"line":8,"column":8},"end":{"line":8,"column":8}},"11":{"start":{"line":9,"column":8},"end":{"line":9,"column":8}}},"branchMap":{"1":{"line":13,"type":"cond-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"2":{"line":13,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]}},"code":["import React from 'react';","import {shallow} from 'enzyme';","import LocalStorageComponent from '../LocalStorageComponent.react';","","describe('LocalStorageComponent', () => {","","    it('renders', () => {","        const component = shallow(<LocalStorageComponent value=\"Test label\" key=\"key1\"/>);","        expect(component).to.be.ok;","    });","});",""],"l":{"0":2,"1":1,"2":1,"3":1,"5":1,"7":1,"8":1,"9":1}},
"/home/ubuntu/local_storage/src/components/LocalStorageComponent.react.js":{"path":"/home/ubuntu/local_storage/src/components/LocalStorageComponent.react.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":0,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":0,"25":1,"26":1,"27":0,"28":1,"29":1,"30":1,"31":0,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":0,"44":0,"45":1,"46":0,"47":0,"48":0,"49":1,"50":1,"51":1,"52":1,"53":1,"54":0,"55":0,"56":0,"57":1,"58":1,"59":1,"60":1},"b":{"1":[1,1],"2":[1,0],"3":[1,0],"4":[0,1],"5":[0,1],"6":[1,1],"7":[0,1],"8":[0,1],"9":[0,1],"10":[1,0,0],"11":[0,1],"12":[1,0],"13":[1,1],"14":[1,0],"15":[0,1],"16":[1,0],"17":[1,0],"18":[0,0],"19":[0,0],"20":[0,0],"21":[0,0],"22":[1,0],"23":[0,0],"24":[0,0]},"f":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":0,"11":1},"fnMap":{"1":{"name":"(anonymous_1)","line":7,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"2":{"name":"defineProperties","line":7,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"3":{"name":"(anonymous_3)","line":7,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"4":{"name":"_interopRequireDefault","line":15,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"5":{"name":"_classCallCheck","line":17,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"6":{"name":"_possibleConstructorReturn","line":19,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"7":{"name":"_inherits","line":21,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"8":{"name":"(anonymous_8)","line":30,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true},"9":{"name":"LocalStorageComponent","line":33,"loc":{"start":{"line":12,"column":4},"end":{"line":12,"column":23}}},"10":{"name":"(anonymous_10)","line":50,"loc":{"start":{"line":22,"column":43},"end":{"line":22,"column":60}}},"11":{"name":"render","line":63,"loc":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"skip":true}},"statementMap":{"1":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"2":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"3":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"4":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"5":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"6":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"7":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"8":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"9":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"10":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"11":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"12":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"13":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"14":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"15":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"16":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"17":{"start":{"line":1,"column":0},"end":{"line":1,"column":0}},"18":{"start":{"line":2,"column":0},"end":{"line":2,"column":0}},"19":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"20":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"21":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"22":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"23":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"24":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"25":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"26":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"27":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"28":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"29":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"30":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"31":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"32":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"33":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"34":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"35":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"36":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"37":{"start":{"line":12,"column":4},"end":{"line":32,"column":5}},"38":{"start":{"line":12,"column":23},"end":{"line":12,"column":23}},"39":{"start":{"line":12,"column":23},"end":{"line":12,"column":23}},"40":{"start":{"line":12,"column":23},"end":{"line":12,"column":23}},"41":{"start":{"line":15,"column":8},"end":{"line":21,"column":9}},"42":{"start":{"line":16,"column":12},"end":{"line":16,"column":12}},"43":{"start":{"line":18,"column":12},"end":{"line":20,"column":13}},"44":{"start":{"line":19,"column":16},"end":{"line":19,"column":16}},"45":{"start":{"line":22,"column":8},"end":{"line":22,"column":8}},"46":{"start":{"line":23,"column":12},"end":{"line":28,"column":13}},"47":{"start":{"line":24,"column":16},"end":{"line":26,"column":17}},"48":{"start":{"line":25,"column":20},"end":{"line":25,"column":20}},"49":{"start":{"line":12,"column":23},"end":{"line":12,"column":23}},"50":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"51":{"start":{"line":33,"column":13},"end":{"line":33,"column":13}},"52":{"start":{"line":35,"column":8},"end":{"line":42,"column":9}},"53":{"start":{"line":36,"column":12},"end":{"line":36,"column":12}},"54":{"start":{"line":38,"column":12},"end":{"line":38,"column":12}},"55":{"start":{"line":39,"column":12},"end":{"line":41,"column":13}},"56":{"start":{"line":40,"column":16},"end":{"line":40,"column":16}},"57":{"start":{"line":43,"column":8},"end":{"line":43,"column":8}},"58":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"59":{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},"60":{"start":{"line":49,"column":0},"end":{"line":49,"column":0}}},"branchMap":{"1":{"line":7,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"2":{"line":7,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"3":{"line":7,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"4":{"line":7,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"5":{"line":15,"type":"cond-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"6":{"line":15,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"7":{"line":17,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"8":{"line":19,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"9":{"line":19,"type":"cond-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"10":{"line":19,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"11":{"line":21,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"12":{"line":21,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"13":{"line":21,"type":"binary-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"14":{"line":21,"type":"if","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"15":{"line":21,"type":"cond-expr","locations":[{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true},{"start":{"line":0,"column":0},"end":{"line":0,"column":0},"skip":true}]},"16":{"line":36,"type":"binary-expr","locations":[{"start":{"line":12,"column":23},"end":{"line":12,"column":23}},{"start":{"line":12,"column":23},"end":{"line":12,"column":23}}]},"17":{"line":43,"type":"if","locations":[{"start":{"line":15,"column":8},"end":{"line":15,"column":8}},{"start":{"line":15,"column":8},"end":{"line":15,"column":8}}]},"18":{"line":46,"type":"if","locations":[{"start":{"line":18,"column":12},"end":{"line":18,"column":12}},{"start":{"line":18,"column":12},"end":{"line":18,"column":12}}]},"19":{"line":51,"type":"if","locations":[{"start":{"line":23,"column":12},"end":{"line":23,"column":12}},{"start":{"line":23,"column":12},"end":{"line":23,"column":12}}]},"20":{"line":52,"type":"if","locations":[{"start":{"line":24,"column":16},"end":{"line":24,"column":16}},{"start":{"line":24,"column":16},"end":{"line":24,"column":16}}]},"21":{"line":52,"type":"binary-expr","locations":[{"start":{"line":24,"column":20},"end":{"line":24,"column":20}},{"start":{"line":24,"column":33},"end":{"line":24,"column":16}}]},"22":{"line":69,"type":"if","locations":[{"start":{"line":35,"column":8},"end":{"line":35,"column":8}},{"start":{"line":35,"column":8},"end":{"line":35,"column":8}}]},"23":{"line":73,"type":"if","locations":[{"start":{"line":39,"column":12},"end":{"line":39,"column":12}},{"start":{"line":39,"column":12},"end":{"line":39,"column":12}}]},"24":{"line":73,"type":"binary-expr","locations":[{"start":{"line":39,"column":16},"end":{"line":39,"column":16}},{"start":{"line":39,"column":28},"end":{"line":39,"column":12}}]}},"code":["import {Component} from 'react';","import PropTypes from 'prop-types';","","/**"," * LocalStorageComponent is an example component."," * It takes a property, `label`, and"," * displays it."," * It renders an input with the property `value`"," * which is editable by the user."," */","export default class LocalStorageComponent extends Component {","    constructor(props) {","        super(props);","        const {setProps, label, value} = this.props;","        if (value) {","            localStorage.setItem(label, value);","        } else {","            if(!localStorage.getItem(label)) {","                localStorage.setItem(label, 0);","            }","        }","        window.addEventListener('storage', function (event) {","            if (event.key == label) {","                if (setProps && (event.oldValue != event.newValue)) {","                    setProps({value: event.newValue});","                }","","            }","        });","        ","","    }","    render() {","        const {setProps, label, value} = this.props;","        if (value) {","            localStorage.setItem(label, value);","        } else {","            let last_value = localStorage.getItem(label);","            if (setProps && last_value != value) {","                setProps({value: last_value});","            }","        }","        return (","            null","        );","    }","}","","LocalStorageComponent.propTypes = {","    /**","     * The ID used to identify this compnent in Dash callbacks","     */","    id: PropTypes.string,","","    /**","     * The label to store value","     */","    label: PropTypes.string,","","    /**","     * The value displayed in the input","     */","    value: PropTypes.string,","","    /**","     * Dash-assigned callback that should be called whenever any of the","     * properties change","     */","    setProps: PropTypes.func","};",""],"l":{"0":1,"1":1,"2":1,"12":1,"15":1,"16":1,"18":0,"19":0,"22":1,"23":0,"24":0,"25":0,"33":1,"35":1,"36":1,"38":0,"39":0,"40":0,"43":1,"49":1}}}
